﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
using System.Windows.Forms;
using System.Data.SqlClient;
using QLTV_V2.DataAccess;
using QLTV_V2.BussinessObject;
using QLTV_V2.BussinessLogic;

namespace QLTV_V2
{
    public partial class FrmNhomBanDoc : DevComponents.DotNetBar.Office2007RibbonForm
    {
        public FrmNhomBanDoc()
        {
            InitializeComponent();
        }
        public string MaNhom;
        public int kt;
        DanhMucBUS dmBUS = new DanhMucBUS();
        Utilities uti = new Utilities();
        NhomBanDoc nhom = new NhomBanDoc();
        private void FrmNhomBanDoc_Load(object sender, EventArgs e)
        {
            if (kt == 1)
            {
                nhom = dmBUS.GetInfoNhomBanDoc(MaNhom);
                txt_MaNhom.Text = nhom.MaNhom;
                txt_TenNhom.Text = nhom.TenNhom;
                txt_SLSach.Text = nhom.SLSach.ToString();
                txt_TGMuon.Text = nhom.TGMuon.ToString();
                txt_GhiChu.Text = nhom.GhiChu;
            }
        }

        private void btn_Luu_Click(object sender, EventArgs e)
        {
            
            if (checkSave(nhom) == true)
            {
                nhom = getTTNhomBD();
                {
                    if (kt == 2)//Thêm
                    {
                        if (uti.CheckExitsValue("NhomBanDoc", "MaNhom", nhom.MaNhom) == true)
                        {
                            if (dmBUS.InsertNhomBanDoc(nhom) == true)
                            {
                                MessageBox.Show("Lưu thành công!", "Thông báo");
                                txt_MaNhom.Text = "";
                                txt_TenNhom.Text = "";
                                txt_SLSach.Text = "";
                                txt_TGMuon.Text = "";
                                txt_GhiChu.Text = "";
                            }
                            else
                                MessageBox.Show("Không thể lưu", "Thông báo");
                        }
                        else
                            MessageBox.Show("Mã nhóm đã tồn tại !", "Thông báo");
                    }
                    else //Sửa
                    {
                        if (MaNhom.ToUpper() != nhom.MaNhom.ToUpper()) //Thay đổi khóa chính thì kiểm tra trùng khóa
                        {
                            if (uti.CheckExitsValue("NhomBanDoc", "MaNhom", nhom.MaNhom) == true)
                            {
                                if (dmBUS.UpdateNhomBanDoc(MaNhom, nhom) == true)
                                    this.Close();
                                else
                                    MessageBox.Show("Không thể lưu", "Thông báo");
                            }
                            else
                                MessageBox.Show("Mã nhóm đã tồn tại !", "Thông báo");
                        }
                        else
                        {
                            if (dmBUS.UpdateNhomBanDoc(MaNhom, nhom) == true)
                                this.Close();
                            else
                                MessageBox.Show("Không thể lưu", "Thông báo");
                        }
                    }
                }
            }
        }
        NhomBanDoc getTTNhomBD()
        {
            nhom.MaNhom = txt_MaNhom.Text;
            nhom.TenNhom = txt_TenNhom.Text;
            try
            {
                nhom.SLSach = Convert.ToInt32(txt_SLSach.Text);
            }
            catch {
                nhom.SLSach = 0;
            }
            try
            {
                nhom.TGMuon = Convert.ToInt32(txt_TGMuon.Text);
            }
            catch {
                nhom.TGMuon = 0;
            }
            nhom.GhiChu = txt_GhiChu.Text;
            return nhom;
        }
        bool checkSave(NhomBanDoc nhom)
        {
            if (txt_MaNhom.Text=="")
            {
                MessageBox.Show("Mã nhóm không được bỏ trống", "Thông báo");
                txt_MaNhom.Focus();
                return false;
            }
            if (txt_TenNhom.Text=="")
            {
                MessageBox.Show("Tên nhóm không được bỏ trống");
                txt_TenNhom.Focus();
                return false;
            }
            if (uti.checkDigit(txt_SLSach.Text) == false)
            {
                MessageBox.Show("Số lượng sách không hợp lệ");
                txt_SLSach.Focus();
                return false;
            }
            if (uti.checkDigit(txt_TGMuon.Text) == false)
            {
                MessageBox.Show("Thời gian mượn không hợp lệ");
                txt_TGMuon.Focus();
                return false;
            }
            return true;
        }

        private void btn_Huy_Click(object sender, EventArgs e)
        {
            this.Close();
        }
    }
}
